﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{

    //public _Default() 
    //{
    //    //委托：可以从零开始赋值
    //    //事件：只能通过“+=或-=”赋值，+=：注册事件  -=：取消事件
    //    //当Page指令属性AutoEventWireup设置为false时，网页不显示内容，不过默认设置为：true
    //    //可以通过-->“注册事件相应处理方法”来达到页面内容显示的功能
    //    PreInit += Page_PreInit;
    //    Init += Page_Init;
    //    InitComplete += Page_InitComplete;
    //    PreLoad += Page_PreLoad;
    //    Load += Page_Load;
    //    LoadComplete += Page_LoadComplete;  
    //}
    //ASPX生命周期演示
    //预初始化
    protected void Page_PreInit(object sender, EventArgs e)
    {
        Response.Write("调用PreInit事件处理方法Page_PreInit<br>");
    }
    //初始化（无视图状态）
    protected void Page_Init(object sender, EventArgs e)
    {
        Response.Write("调用Init事件处理方法Page_Init<br>");
    }
    //初始化完成
    protected void Page_InitComplete(object sender, EventArgs e)
    {
        Response.Write("调用InitComplete事件处理方法Page_InitComplete<br>");
    }
    //预加载
    protected void Page_PreLoad(object sender, EventArgs e)
    {
        Response.Write("调用PreLoad事件处理方法Page_PreLoad<br>");
    }
    //加载  初始化（有视图状态）
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write("调用Load事件处理方法Page_Load<br>");
        //Label1.Text = "初始值";
        //IsPostBack只有在第一次打开的时候是false，其他时候都是true
        Response.Write(IsPostBack + "<br>");
        if (!IsPostBack)//都有这一行，在页面第一次加载的时候初始化相关控件
        {
            Label1.Text = "初始值";
        }
    }
    //加载完成.
    protected void Page_LoadComplete(object sender, EventArgs e)
    {
        Response.Write("调用LoadComplete事件处理方法Page_LoadComplete<br>");
    }
    //3.调用粒度比事件注册更快一些
    //protected override void OnLoad(EventArgs e)
    //{
    //    base.OnLoad(e);
    //    Response.Write("重写Page父类中的OnLoad方法");
    //}


    //页面控件事件演示
    //控件加载完成以后，页面加载才完成
    protected void Button1_Load(object sender, EventArgs e)
    {
        Response.Write("Button控件加载事件<br>");
    }
    protected void TextBox2_Load(object sender, EventArgs e)
    {
        Response.Write("Text Box控件加载事件<br>");
    }

    protected void Button1_Click1(object sender, EventArgs e)
    {
        Response.Write("Button控件点击事件<br>");
    }
    //Text Box控件内容改变事件中，若要让控件的Changed事件立即得到服务器的响应
    //，就需要把该控件的AutoPostBack属性值设置为True(默认为false)
    protected void TextBox2_TextChanged1(object sender, EventArgs e)
    {
        Response.Write("Text Box控件内容改变事件<br>");
        Label1.Text = TextBox2.Text;
    }
}